﻿// <copyright file="IGeographicalData.cs" company="QUT">
//     Copyright (c) Ninety Nine Percent. All rights reserved.
// </copyright>

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Qut.GenerateKml.Data
{
    /// <summary>
    /// Interface for managing geographical data.
    /// </summary>
    public interface IGeographicalData
    {
        /// <summary>
        /// Loads the specified mif file path.
        /// </summary>
        /// <param name="mifFilePath">The mif file path.</param>
        /// <param name="midFilePath">The mid file path.</param>
        /// <returns>Returns the loaded MapInfo file.</returns>
        MapInfoFile Load(string mifFilePath, string midFilePath);

        /// <summary>
        /// Determines whether this instance is valid.
        /// </summary>
        /// <returns>
        /// <c>true</c> if this instance is valid; otherwise, <c>false</c>.
        /// </returns>
        bool IsValid();

        /// <summary>
        /// Gets the errors.
        /// </summary>
        /// <returns>Returns a list of errors, if any.</returns>
        List<string> GetErrors();
    }
}
